VERSION 1.0 CLASS
BEGIN
  MultiUse = -1  'True
  Persistable = 0  'NotPersistable
  DataBindingBehavior = 0  'vbNone
  DataSourceBehavior  = 0  'vbNone
  MTSTransactionMode  = 0  'NotAnMTSObject
END
Attribute VB_Name = "HagedornBrownParams"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
 Public Function GetParam1(key As Double) As Double
          If key < 0.005 Then
          GetParam1 = 0.002
          ElseIf key < 0.01 Then
           GetParam1 = 0.002 + (0.01 - key) / 10
              ElseIf key < 0.03 Then
           GetParam1 = 0.0032
              ElseIf key < 0.04 Then
           GetParam1 = 0.0038
              ElseIf key < 0.05 Then
           GetParam1 = 0.0041
              ElseIf key < 0.06 Then
           GetParam1 = 0.002
             ElseIf key < 0.07 Then
           GetParam1 = 0.0051
             ElseIf key < 0.08 Then
           GetParam1 = 0.0058
             ElseIf key < 0.09 Then
           GetParam1 = 0.006
            ElseIf key < 0.1 Then
           GetParam1 = 0.0065
            ElseIf key < 0.2 Then
           GetParam1 = 0.0065 + (0.009 - 0.0065) * (key - 0.1) / 0.1
            ElseIf key < 0.3 Then
           GetParam1 = 0.009 + (key - 0.2) * 0.001 / 0.1
          Else
           GetParam1 = 0.01
           End If
 End Function
       

        Public Function GetParam2(key As Double) As Double
         key = key / 10 ^ (-6)
         If key < 2 Then
         GetParam2 = 0.02
         ElseIf key < 10 Then
          GetParam2 = 0.02 + (key - 2) * (0.15 - 0.05) / 8
          ElseIf key < 20 Then
          GetParam2 = 0.15 + 0.05 * (key - 10) / 20
           ElseIf key < 100 Then
          GetParam2 = 0.2 + (0.35 - 0.2) * (key - 20) / 80
           ElseIf key < 300 Then
          GetParam2 = 0.35 + (0.55 - 0.35) * (key - 100) / 200
           ElseIf key < 600 Then
          GetParam2 = 0.55 + (0.7 - 0.55) * (key - 300) / 300
           ElseIf key < 1000 Then
          GetParam2 = 0.7 + (0.8 - 0.7) * (key - 600) / 400
           ElseIf key < 2000 Then
          GetParam2 = 0.8 + 0.1 * (key - 1000) / 1000
           ElseIf key < 5000 Then
          GetParam2 = 0.9 + 0.07 * (key - 2000) / 3000
          Else
          GetParam2 = 0.97
          End If
        End Function
        
     

        Public Function GetParamX(key As Double) As Double
          If key < 0.01 Then
          GetParamX = 1
          ElseIf key < 0.02 Then
          GetParamX = 1 + 0.1 * (key - 0.01) / 0.01
          ElseIf key < 0.03 Then
          GetParamX = 1.1 + 0.3 * (key - 0.02) / 0.01
          ElseIf key < 0.04 Then
          GetParamX = 1.4 + 0.2 * (key - 0.03) / 0.01
          ElseIf key < 0.08 Then
          GetParamX = 1.6 + 0.2 * (key - 0.04) / 0.04
          Else
          GetParamX = 1.87
          End If
        End Function
       

